Veri cation of FLASH Cache Coherence ProtocolBy Aggregation of Distributed Transactions
نویسندگان
چکیده
To verify cache coherence protocols for distributed multi-processor architectures, we compare a state graph of the implementation with a speciication which is a state graph representing the simpliied behavior. The steps in the spec-iication correspond to atomic transactions, which are not atomic in the implementation. The method relies on an abstraction function which aggregates the implementation steps of each transaction into a single atomic transaction in the speciication. The key idea in deening the abstraction function is that it must complete transactions which have committed but are not nished. This approach is applied to veriication of the cache coherence protocol in the FLASH multiprocessor system. We illustrate how to determine an abstraction function which reduces the protocol to an atomic speciication. The protocol consisting of more than a hundred implementation steps has been reduced into six kinds of atomic transactions. Based on the reduced behavior, it is very easy to prove crucial properties of the protocol including data consistency of cached copies at the user level. Moreover, the reduced model allows us to write a simple executable memory model of the protocol. The aggregation method is also used to prove that the reduced protocol satisses a desired memory consistency model. 1 Introduction In shared-memory multiprocessor architectures, cache coherence protocols maintain consistency of multiple copies of cached data. The protocols control a number of readable and writable copies of each memory line for multiprocessors. Modiication of one copy of a datum may require updating of other copies to maintain consistency among them. Several coherence protocols have been proposed for distributed multiprocessor architectures but few are formally veriied 1, 15, 2, 10].
منابع مشابه
Parallelizing the Mur' Veriier
With the use of state and memory reduction techniques in veri cation by explicit state enumeration, runtime becomes a major limiting factor. We describe a parallel version of the explicit state enumeration veri er Mur' for distributed memory multiprocessors and networks of workstations that is based on the message passing paradigm. In experiments with three complex cache coherence protocols, pa...
متن کاملSpeci cation-Based Parameter-Model Interaction: Towards a Correct Re ection of Memory Characteristics in a DSM Cluster Simulation
A DSM (Distributed-Shared Memory) cluster is an attractive parallel computing platform for scienti c research as it provides programming advantages within a scalable and cost-e ective hardware solution. This bene t derives from the fact that a DSM system provides a shared-memory abstraction on top of a distributed-memory machine by caching data replicas locally. In this respect, a coherence pro...
متن کاملProtocol Verification by Aggregation of Distributed Transactions
We present a new approach for using a theorem-prover to verify the correctness of protocols and distributed algorithms. The method compares a state graph of the implementation with a specification which is a state graph representing the desired abstract behavior. The steps in the specification correspond to atomic transactions, which are not atomic in the implementation. The method relies on an...
متن کاملDistributed Queuing or Distributed Priority Queuing? On the Design of Cache-Coherence Protocols for Distributed Transactional Memory
Distributed transactional memory (TM) promises to alleviate difficulties with lock-based (distributed) synchronization and object performance bottlenecks in distributed systems. In distributed TM systems, both the management and consistency of a distributed transactional object are ensured by a cache-coherence protocol. In this paper, we formalize two classes of cache-coherence protocols: distr...
متن کاملUsing Magnetic Disk instead of Main Memory in the Mur '
In veri cation by explicit state enumeration a randomly accessed state table is maintained. In practice, the total main memory available for this state table is a major limiting factor in veri cation. We describe a version of the explicit state enumeration veri er Mur' that allows the use of magnetic disk instead of main memory for storing almost all of the state table. The algorithm avoids cos...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 1996